#pragma once

#include "DrumSynth.h"
#include "ADSR.h"
#include "SineWave.h"
#include "note.h"

#include <vector>

class CDrumFactory
{
public:
	CDrumFactory(void);
	~CDrumFactory(void);

	void SetNote(CNote *note);
	CDrumSynth *CreateInstrument();

	bool LoadFile(const char *filename);

	bool SynthDrum();

private:
	CSineWave m_sine;
	std::vector<short> m_wave;
	std::vector<std::vector<short>> m_wavetable;
	int m_holder;
	double m_pitch;

	CADSR m_AR;
};

